'use strict';
exports = module.exports = function($scope, $rootScope, $timeout, $alert, $state, $uibModal, yxtable14, $API) {
    // 搜索表单项
    $scope.obj = {
        // 下拉框搜索项: 时间段
        'begin': '',
        'end': '',
        // 下拉框搜索项: 关键字
        'keyWord': '',
        // 下拉框搜索项: 用户
        'username': '',
        // 下拉框搜索项: 分类
        'bizId': '',
        // 下拉框搜索项: 归档状态
        'archive': '',
        // 下拉框搜索项: 收入状态
        'incomeStatus': '',
        // 下拉框搜索项: 拆分状态
        'splitState': ''
    }
    // 初始化数据源
    $scope.dataSet = {
        'customer': select2Config( [] ), // 数据源: 用户列表
        'busiType': select2Config( [] ), // 数据源: 分类列表
        'archiveStatus': select2Config( [] ), // 数据源: 归档状态列表
        'incomeStatus': select2Config( [] ), // 数据源: 收入状态列表
        'splitStatus': select2Config( [] ), // 数据源: 拆分状态列表
    }
    // 读取用户列表
    $API.Drop.customer('all.search')
    .then(function(data) {
        $timeout(function() {
            $scope.dataSet.customer = data
        }, 0) }
    );
    // 读取分类列表
    $API.Drop.busiType('all.search')
    .then(function(data) {
        $timeout(function() {
            $scope.dataSet.busiType = data
        }, 0) }
    );
    // 读取归档状态列表
    $API.Drop.archiveStatus('all.search')
    .then(function(data) {
        $timeout(function() {
            $scope.dataSet.archiveStatus = data
        }, 0) }
    );
    // 读取收入状态列表
    $API.Drop.incomeStatus('all.search')
    .then(function(data) {
        $timeout(function() {
            $scope.dataSet.incomeStatus = data
        }, 0) }
    );
    // 读取拆分状态列表
    $API.Drop.splitStatus('all.search')
    .then(function(data) {
        $timeout(function() {
            $scope.dataSet.splitStatus = data
        }, 0) }
    );
    // 表格数据
    $scope.yxt14loading = false; // 加载中
    $scope.page = 1; // 分页
    $scope.pagesize = 30;//每页显示条数，默认30条;
    $scope.yxt14totalrow = 999; // 总条数
    $scope.yxt14datalist = [];
    $scope.yxt14datasum = {};
    // 读接口
    $scope.showList = function() {
        $scope.yxt14loading = true;
        $API.List.IncomeB2TB($scope.params).then(function(data) {
            $timeout(function() {
                $scope.yxt14datalist = data.list;
                $scope.yxt14totalrow = data.rowcount;
                $scope.yxt14datasum = data.sumDate;
                $scope.yxt14loading = false;
            }, 0)
        });
    }
    // 初始化
    yxtable14.init($scope);
    $scope.adjustmentItem = function(row) { // 调整方法
        // todo
        alert("这里应该是 弹框 处理对象 请尽快处理");
        $uibModal.open({
            templateUrl : 'adjustmentItem.html',
            controller : function($scope, $uibModalInstance, $timeout){
                $scope.frm = {
                    a1 : '',
                    a2 : '',
                    a3 : '',
                    a4 : ''
                };
                $scope.frm2 = {
                    nameSource : select2Config([])
                };
                $scope.submitFun = throttleSubmit(function(){
                    $scope.From.submitted = true;
                    if($scope.From.$invalid) { return false; }
                    return param
                },function(enable, param){
                    console.log('提交代码', param)
                    $timeout(function(){
                        alert("这里应该是提交操作逻辑");
                        $uibModalInstance.dismiss();
                        enable()
                    },3e3)
                })
                $scope.Cancel = function() {
                    $uibModalInstance.dismiss();
                };
            },
            windowClass: 'modalWidth700',
            scope:$scope.$new()
        });
    }
    $scope.eidtItem = function(row) { // 编辑方法
        // todo
        alert("这里应该是 跳转 处理对象 请尽快处理");
        $go('app.make.maketable1', {id: row.id}) // 编辑方法
    }
    $scope.deleteItem = function(row) { // 删除方法
        // todo
        alert("这里应该是 删除 处理对象 请尽快处理");
        $alert.confirm("是否删除本条数据", function(closeFn) {
            $API.Delete.systemCustomerDelete({id: row.id}) // 删除方法
            .then(function(data) {
                var result = data.res_code; // 0失败 1成功
                if( result == 1 ){
                    $alert.success(data.res||'删除成功');
                    $scope.showList();
                    closeFn(); // 关闭窗口
                    return false;
                }
                $alert.error(data.res||'删除失败')
            });
        })
    }
    $scope.openItem = function(row) { // 开启方法
        // todo
        alert("这里应该是 改状态 处理对象 请尽快处理");
        $API.Edit.systemCustomerStatus({id: row.id}) // 开启方法
        .then(function(data) {
            var result = data.res_code; // 0失败 1成功
            if( result == 1 ){
                $alert.success(data.res||'开启成功')
                $timeout(function() {
                    // row.status = row.status == 0 ? 1 : 0;
                }, 0)
                return false;
            }
            $alert.error(data.res||'开启失败')
        });
    }
    $scope.synchronizationItem = function() { // 同步数据
        // TODO :: 这里应该是 确认操作
        $alert.confirm("是否进行同步数据", function(closeFn) {
            console.log("开始执行同步数据");
            closeFn(); // 关闭窗口
        })
    }
    $scope.exportItem = function() { // 导出
        // TODO :: 这里应该是 下载操作
        var url = "http://www.baidu.com?t=" + Math.ceil(Math.random()*1e4);
        url += "&begin=" + $scope.obj.begin; // 时间段
        url += "&end=" + $scope.obj.end; // 时间段
        url += "&keyWord=" + $scope.obj.keyWord; // 关键字
        url += "&username=" + $scope.obj.username; // 用户
        url += "&bizId=" + $scope.obj.bizId; // 分类
        url += "&archive=" + $scope.obj.archive; // 归档状态
        url += "&incomeStatus=" + $scope.obj.incomeStatus; // 收入状态
        url += "&splitState=" + $scope.obj.splitState; // 拆分状态
        window.location.href = url
    }
    $scope.batchEditPriceItem = function() { // 批量处理单价
        // TODO :: 这里应该是 弹框操作
        $uibModal.open({
            templateUrl : 'batchEditPriceItem.html',
            controller : function($scope, $uibModalInstance, $timeout, throttleSubmit){
                $scope.frm = {
                    a1 : '',
                    a2 : '',
                    a3 : '',
                    a4 : ''
                };
                $scope.frm2 = {
                    nameSource : select2Config([])
                };
                $scope.submitFun = throttleSubmit(function(){
                    $scope.From.submitted = true;
                    if($scope.From.$invalid) { return false; }
                    var param = {};
                    return param
                },function(enable, param){
                    console.log('提交代码', param)
                    $timeout(function(){
                        alert("这里应该是提交操作逻辑");
                        $uibModalInstance.dismiss();
                        enable()
                    },3e3)
                })
                $scope.Cancel = function() {
                    $uibModalInstance.dismiss();
                };
            },
            windowClass: 'modalWidth700',
            scope:$scope.$new()
        });
    }
    $scope.batchEditNumberItem = function() { // 批量处理数量
        // TODO :: 这里应该是 弹框操作
        $uibModal.open({
            templateUrl : 'batchEditNumberItem.html',
            controller : function($scope, $uibModalInstance, $timeout, throttleSubmit){
                $scope.frm = {
                    a1 : '',
                    a2 : '',
                    a3 : '',
                    a4 : ''
                };
                $scope.frm2 = {
                    nameSource : select2Config([])
                };
                $scope.submitFun = throttleSubmit(function(){
                    $scope.From.submitted = true;
                    if($scope.From.$invalid) { return false; }
                    var param = {};
                    return param
                },function(enable, param){
                    console.log('提交代码', param)
                    $timeout(function(){
                        alert("这里应该是提交操作逻辑");
                        $uibModalInstance.dismiss();
                        enable()
                    },3e3)
                })
                $scope.Cancel = function() {
                    $uibModalInstance.dismiss();
                };
            },
            windowClass: 'modalWidth700',
            scope:$scope.$new()
        });
    }
    $scope.correctItem = function() { // 手动校准
        // TODO :: 这里应该是 确认操作
        $alert.confirm("是否进行手动校准", function(closeFn) {
            console.log("开始执行手动校准");
            closeFn(); // 关闭窗口
        })
    }
    $scope.autoCorrectItem = function() { // 开启自动校准
        // TODO :: 这里应该是 确认操作
        $alert.confirm("是否进行开启自动校准", function(closeFn) {
            console.log("开始执行开启自动校准");
            closeFn(); // 关闭窗口
        })
    }
}